package vista.Consultas;
import java.util.List;

import javax.swing.ImageIcon;
import javax.swing.JLabel;
import javax.swing.JScrollPane;
import javax.swing.JTable;
import javax.swing.WindowConstants;
import javax.swing.table.DefaultTableModel;

import controlador.controladorAdmin;
import dto.Administracion.DTO_Empleado;
import dto.Administracion.DTO_Sucursal;


/**
* This code was edited or generated using CloudGarden's Jigloo
* SWT/Swing GUI Builder, which is free for non-commercial
* use. If Jigloo is being used commercially (ie, by a corporation,
* company or business for any purpose whatever) then you
* should purchase a license for each developer using Jigloo.
* Please visit www.cloudgarden.com for details.
* Use of Jigloo implies acceptance of these licensing terms.
* A COMMERCIAL LICENSE HAS NOT BEEN PURCHASED FOR
* THIS MACHINE, SO JIGLOO OR THIS CODE CANNOT BE USED
* LEGALLY FOR ANY CORPORATE OR COMMERCIAL PURPOSE.
*/
@SuppressWarnings("serial")
public class ListadoEmpleados extends javax.swing.JFrame {
	private JLabel jLabelTitulo;
	private JScrollPane jScrollPaneListadoClientes;
	private JTable jTableListado;
	private DTO_Empleado sup;
	private DTO_Sucursal suc;
	private String fechaIngreso;
	private String fechaEgreso;
	private String superior;
	private String sucursal;

	
	public ListadoEmpleados() {
		super();
		initGUI();
	}
	
	private void initGUI() {
		try {
			setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
			this.setTitle("Aplicaciones Distribuidas - TPO Grupo: 10");
			this.setIconImage(new ImageIcon(getClass().getClassLoader().getResource("images/box.png")).getImage());
			getContentPane().setLayout(null);
			{
				jLabelTitulo = new JLabel();
				getContentPane().add(jLabelTitulo);
				jLabelTitulo.setText("Listado Empleados");
				jLabelTitulo.setFont(new java.awt.Font("Verdana",1,20));
				jLabelTitulo.setBounds(12, 12, 245, 35);
			}
			{
				jScrollPaneListadoClientes = new JScrollPane();
				getContentPane().add(jScrollPaneListadoClientes);
				jScrollPaneListadoClientes.setBounds(12, 53, 799, 311);
				{
					
					List<DTO_Empleado> empleadoDTO = controladorAdmin.getInstancia().listarEmpleados();
					
					DefaultTableModel jTableListadoModel = new DefaultTableModel();
			
					jTableListadoModel.addColumn("ID");
					jTableListadoModel.addColumn("Nombre");
					jTableListadoModel.addColumn("Apellido");
					jTableListadoModel.addColumn("Fecha Ingreso");
					jTableListadoModel.addColumn("Fecha Egreso");
					jTableListadoModel.addColumn("Superior");
					jTableListadoModel.addColumn("Sucursal");
					
					for (DTO_Empleado e :empleadoDTO){
						
						if(e.getFechaIngreso()!= null)
							fechaIngreso = e.getFechaIngreso().toString();
						else
							fechaIngreso = "";
						if(e.getFechaEgreso()!= null)
							fechaEgreso = e.getFechaEgreso().toString();
						else
							fechaEgreso = "";
						superior = "";
						if(e.getIdSuperior()!= null){
							sup = controladorAdmin.getInstancia().getEmpleado(e.getIdSuperior());
							if (sup != null)
								superior = sup.getNombre() + " " + sup.getApellido();
						}
						sucursal = "";
						if(e.getIdSucursal()!= null){
							suc = controladorAdmin.getInstancia().getSucursal(e.getIdSucursal());
							if (suc != null)
								sucursal = suc.getDescripcion();
						}

						
						
						jTableListadoModel.addRow(new Object[] { e.getId(), 
																e.getNombre(),
																e.getApellido(), 
																fechaIngreso,
																fechaEgreso,
																superior, 
																sucursal});
						
						
					}
					jTableListado = new JTable(jTableListadoModel);
				
					
					jScrollPaneListadoClientes.setViewportView(jTableListado);
					jTableListado.setModel(jTableListadoModel);
				}
			}
			pack();
			this.setSize(839, 415);
		} catch (Exception e) {
		    //add your error handling code here
			e.printStackTrace();
		}
	}

}
